﻿using System;
using System.Collections.Generic;

using Model.Cms;
namespace IDAL.Cms
{
    /// <summary>
    /// 接口层，内容管理，节点管理
    /// </summary>
    public interface INode
    {
        /// <summary>
        /// 新增节点
        /// </summary>
        /// <param name="info"></param>
        /// <returns></returns>
        int InsertNodel(NodeInfo info);

        /// <summary>
        /// 修改节点
        /// </summary>
        /// <param name="info"></param>
        /// <returns></returns>
        bool UpdateNode(NodeInfo info);

        /// <summary>
        /// 删除节点
        /// </summary>
        /// <param name="blockID"></param>
        /// <param name="blockList"></param>
        /// <param name="staffID"></param>
        /// <returns></returns>
        bool DeleteNodel(int nodeID, string nodeList, int staffID);

        /// <summary>
        /// 获取节点对象
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        NodeInfo GetNodeByID(int id);

        /// <summary>
        /// 节点列表
        /// </summary>
        /// <param name="condition"></param>
        /// <returns></returns>
        IList<NodeInfo> ListNode(NodeCondition condition);

        /// <summary>
        /// 节点列表
        /// </summary>
        /// <param name="condition"></param>
        /// <param name="recordcount"></param>
        /// <returns></returns>
        IList<NodeInfo> ListNode(NodeCondition condition, out int recordCount);
    }
}
